package com.zmn.brs.business.interfaces.base;

import com.zmn.brs.model.bo.rule.CacheThresholdBO;

/**
 * 描述： 安全监控实现
 *
 * @author chongw
 * @since 2021-07-08 9:55
 */
public interface BaseBService<T> {

    /**
     * 根据事件类型获取当前事件下规则公共阈值对象
     * @param eventType
     * @return
     */
    <T> T getCommonThreshold(Integer eventType);

    /**
     * 根据事件类型获取当前事件下规则公共阈值
     * @param eventType
     * @return
     */
    Double getCommonThresholdValue(Integer eventType);

    /**
     * 检查规则状态
     * @param configRedisKey
     * @return
     */
    Boolean checkStatus(String configRedisKey);

    /**
     * 检查状态
     * @param configData
     * @return
     */
    Boolean checkStatus(CacheThresholdBO configData);

    /**
     * 获取配置 整体单量的阈值
     * @param redisKey
     * @return
     */
    CacheThresholdBO getRuleConfigValue(String redisKey);

    /**
     * 获取事件群机器人ID
     * @param eventType
     * @return
     */
    Integer getRobotId(Integer eventType);



}
